package controle;

public class Mercadoria {

    /*
     * Atributos
     */
    
    private int codigo;
    private String nome;
    private double quantidade;
    private double precoUnitario;

    /*
     * Construtores
     */
    
    public Mercadoria(int codigo, String nome, double quantidade, double precoUnitario) {
        this.codigo = codigo;
        this.nome = nome;
        this.quantidade = quantidade;
        this.precoUnitario = precoUnitario;
    }
    /* 
     * GETTER/SETTERS
     * 
     */

  
    public void setQuantidade(double quantidade) {
        if (quantidade > 0) {
            this.quantidade = quantidade;
            
        }
    }

    public void setPrecoUnitario(double precoUnitario) {
        if (precoUnitario > 0) {
            this.precoUnitario = precoUnitario;
        }
    }

    public void setNome(String nome) {
        this.nome = nome;
    }
   
    public int getCodigo() {
        return codigo;
    }

    public String getNome() {
        return this.nome;
    }

    public double getQuantidade() {
        return this.quantidade;
    }

    public double getPrecoUnitario() {
        return this.precoUnitario;
    }
    
    

    /* equals
     * 
     */
    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Mercadoria other = (Mercadoria) obj;
        if (this.codigo != other.codigo) {
            return false;
        }
        if ((this.nome == null) ? (other.nome != null) : !this.nome.equals(other.nome)) {
            return false;
        }
        if (Double.doubleToLongBits(this.quantidade) != Double.doubleToLongBits(other.quantidade)) {
            return false;
        }
        if (Double.doubleToLongBits(this.precoUnitario) != Double.doubleToLongBits(other.precoUnitario)) {
            return false;
        }
        return true;
    }

    /*
     * Métodos
     */
        
    public String dadosDaMercadoria() {
        String saida = " ";
        saida = saida + ("Codigo da Mercadoria" + getCodigo() + " Nome da Mercadoria : " + getNome() + " \nQuantidade em Estoque: " + getQuantidade() + "\nPreço Unitário (R$): " + getPrecoUnitario());

        return saida;
    }
}
    
